import Mock from 'better-mock';
import MockUtils from '../MockUtils';
import * as OrderData from '../data/dlt25066';

/**
 * DltOrderMock
 */
class DltOrderMock {

    // 显示资源选项
    option(option) {
        let param = MockUtils.parseOption(option);
        const tabsInfo = {
            all: 100, // 全部
            new: 10, // 最新
            inactive: 10, // 不活跃
            banned: 100, // 禁用
            recycle: 0, // 回收站
        };
        let data = {
            tabs_info: tabsInfo,
            options_of_gender: { 1: '男', 2: '女', 3: '未知' },
            options_of_status: { 1: '正常', 2: '禁止' },
            options_of_is_virtual: { 1: '是', 2: '否' },

        }
        return MockUtils.message(param._code, '没有数据', data);
    }

    // 显示资源列表
    index(option) {
        let param = MockUtils.parseOption(option);
        console.log('[订单模拟数据] 显示资源列表 param=', param, '&option=', option);
        // 可以通过传参 code 来控制返回消息的成功状态。
        let data = [], total = Math.ceil(Math.random() * 50);
        for (let i = 1; i <= total; i++) {
            data.push({
                id: i,
                member_name: "会员账号 " + i,
                nickname: "会员昵称 " + i,
                realname: "真实姓名 " + i,
                gender: 1,
                gender_text: "性别 " + i,
                avatar: "会员头像 " + i,
                mobile: "手机号码 " + i,
                login_count: 0,
                total_money: 0.00,
                blance_money: 0.00,
                frozen_money: 0.00,
                total_integral: 0,
                blance_integral: 0,
                frozen_integral: 0,
                status: 1,
                status_text: "状态 " + i,
                created_at: Mock.mock('@datetime("yyyy-MM-dd HH:mm:ss")'),
                street: "街道 " + i,
                city: "城市 " + i,
                province: "省份 " + i,
            });
        }
        return MockUtils.message(200, 'success', { total, data });
    }

    // 显示指定的资源
    read(option) {
        let param = MockUtils.parseOption(option);
        console.log('[订单模拟数据] 显示指定的资源 param=', param, '&option=', option);
        if (param.id == undefined) {
            return MockUtils.message(false, '参数无效');
        }
        // let data = this.index().data[0];
      
        return MockUtils.message(200, 'success', OrderData);
    }

    // 保存新建的资源
    save(option) {
        let param = MockUtils.parseOption(option);
        console.log('[订单模拟数据] 保存新建的资源 param=', param, '&option=', option);
        if (!param.user_name) {
            return MockUtils.message(false, '用户名是必填项');
        }
        return MockUtils.message(param._code, 'success', { id: Mock.mock('@id') });
    }

    // 保存更新的资源
    update(option) {
        let param = MockUtils.parseOption(option);
        console.log('[订单模拟数据] 保存更新的资源 param=', param, '&option=', option);
        if (!param.id || isNaN(param.id)) {
            return MockUtils.message(false, '参数无效');
        }
        if (!param.user_name || param.user_name.trim().length == 0) {
            return MockUtils.message(false, '用户名无效');
        }
        return MockUtils.message(param._code, 'success', { id: param.id });
    }

    // 删除指定资源
    delete(option) {
        let param = MockUtils.parseOption(option);
        console.log('[订单模拟数据] 删除指定资源 param=', param, '&option=', option);
        if (param.id == undefined) {
            return MockUtils.message(false, '参数无效');
        }
        return MockUtils.message(param._code, 'success', { id: param.id });
    }
}
export default new DltOrderMock();